typedef int16_t mattype;
int matrixsizes = 16;
#define NR_ADD 1

RT_LOCAL_DATA int16_t m_a[16*16];
RT_LOCAL_DATA int16_t m_b[16*16];
RT_LOCAL_DATA int16_t m_c[1*256];
RT_L2_DATA int16_t m_a_l2[16*16] = {
-944, -14297, 6100, -1143, 1126, -10691, -16093, 12919, -10474, 3989, 348, -7523, -6252, -15391, -7666, -10328, 
6452, 8977, 7717, 1041, -13266, 16267, -8661, 3253, 16101, 14815, -6000, -3190, -15198, 2468, -11429, -10775, 
-2896, 14755, 522, 12549, -14932, -8821, 12755, 12120, -5889, -4387, 1873, -14488, -14301, -14377, -14558, -15385, 
-5320, -10108, -4884, 11293, 8699, 12972, 12069, -2071, -2551, -15972, -10149, -8514, -3430, 8644, -1953, 11334, 
-7862, 14435, 1045, -5664, -10848, -14660, -9710, 4010, -5202, -1068, -8507, 9744, -15676, -14093, 5577, -13284, 
9607, 9389, -3868, 2758, -13510, -11865, -2410, -2185, -13856, 6146, -6679, -5989, -6426, 3001, -15713, -14712, 
8430, 7223, 12505, -10095, -9454, -155, 4091, -5356, -11594, 6426, 4407, -16126, -12451, -1136, -12101, 1479, 
-10321, -5534, -12243, 1618, -1502, 1554, 5872, 614, -14053, 2240, -1312, -14307, -15630, 12252, -3625, 9584, 
-7395, 12730, 12804, 4816, 861, -10752, 14806, 9282, 7031, 12619, 14128, 5083, -15625, -15274, 15190, -8588, 
-8218, 613, -5740, -10312, 4837, -3644, 8818, -16277, 12508, -1022, -1947, -5948, 4652, -11353, 16141, -6904, 
-2209, -16203, -6466, -5038, -6274, 6588, 852, 763, -15546, -8322, -10570, -4658, -6005, -15254, 119, 1934, 
-415, -14323, -14232, 15158, -14361, 15815, -9754, 9600, -1943, 13876, -838, 2324, 15356, -12582, 14918, 8045, 
-10647, 9649, 6164, 12885, -6578, -12846, -10534, -2351, -3509, -3562, 7514, 2322, -9499, -6304, -15078, -7435, 
-6371, 1024, -5989, -13636, 8780, -1739, 13358, 1776, 5062, 12795, 15424, -11854, 12546, -5117, 7920, 12984, 
-14742, -6964, 7005, 14425, -6249, -6671, -10658, -13870, -4367, -6681, -13374, -2170, -8521, -2560, 12861, 7684, 
-15256, -10493, -1499, 5568, -8492, 1624, -13818, -11815, -12542, 10231, -5090, -8546, 6439, -7649, -15624, 11631, 
};

RT_L2_DATA int16_t m_b_l2[16*16] = {
4775, -15059, 7345, -2778, -5729, 5394, 425, -10994, 15131, 333, -5236, -7791, -1956, -91, 8502, 11306, 
3953, -3998, -2406, 1751, -9058, 6916, 4305, -799, -4401, -10853, 236, -12531, 14021, 7196, -12914, -287, 
-9108, -15122, -3877, 6833, 1332, -11617, -2800, -15251, -6015, 5140, -6972, -11540, -14846, 10734, -10802, 2714, 
1465, -355, 14882, 3613, -15393, -6689, -1300, -7620, 4739, -12161, 14956, -7279, -9153, 5973, -2116, -4174, 
8292, 557, 10347, 14524, -13312, 15057, -5400, 12566, 7149, 14113, 13710, -9505, 8914, 1066, -6149, -5414, 
2871, -897, -1331, 1908, -1756, -1842, -7374, -10870, 16279, 9161, -5950, 8390, -4354, 7161, -1610, 2104, 
-8713, -14543, 12591, -7408, 26, 10149, -40, -15804, -10994, -12860, 1978, -2362, 9423, -13294, 5934, 10126, 
1554, -13485, 3925, -11496, 11835, -11019, -6028, -7613, 11480, 8703, 8766, -13820, -4730, 5215, 12568, 8086, 
-5110, -3750, -4385, 10784, 13972, -3265, 9185, 14241, -5829, -10841, 7438, -158, 204, -15022, -12841, -8389, 
2531, 10923, 12142, -4450, -6331, 16064, 6116, 1198, 4110, -1021, -3457, -3392, 3150, -12081, 3692, 10529, 
-13595, 2132, -5543, 6387, -9961, -8220, -8558, -2985, 2450, 12417, -10805, 1358, 11169, 13647, -8346, -14579, 
-13880, 3077, 10446, -1667, -14551, -5559, -9590, -13999, -10372, 8640, -3445, 8368, -12989, -11309, -11388, -925, 
-4000, 12108, 4535, 12531, 15652, 12382, -5594, 4085, -3069, 13909, -13325, -16267, -8690, 11617, -3094, -12004, 
5858, -11754, 11746, 16322, -7873, -9721, 12831, -12232, 14117, -9106, 3968, 7056, 12413, 15005, -12820, 7420, 
-4805, -2190, -13173, -3719, -14863, 4937, -890, -10617, -4259, -15607, -15594, -9727, 13070, -5434, 6758, -2715, 
8953, 15879, 15640, -8859, -3170, -9184, -12770, 16293, 9772, -1413, -4834, -9696, -15883, 7557, -4653, -7190, 
};

RT_L2_DATA int16_t m_exp_l2[16*16] = {
3831, -29356, 13445, -3921, -4603, -5297, -15668, 1925, 4657, 4322, -4888, -15314, -8208, -15482, 836, 978, 
10405, 4979, 5311, 2792, -22324, 23183, -4356, 2454, 11700, 3962, -5764, -15721, -1177, 9664, -24343, -11062, 
-12004, -367, -3355, 19382, -13600, -20438, 9955, -3131, -11904, 753, -5099, -26028, -29147, -3643, -25360, -12671, 
-3855, -10463, 9998, 14906, -6694, 6283, 10769, -9691, 2188, -28133, 4807, -15793, -12583, 14617, -4069, 7160, 
430, 14992, 11392, 8860, -24160, 397, -15110, 16576, 1947, 13045, 5203, 239, -6762, -13027, -572, -18698, 
12478, 8492, -5199, 4666, -15266, -13707, -9784, -13055, 2423, 15307, -12629, 2401, -10780, 10162, -17323, -12608, 
-283, -7320, 25096, -17503, -9428, 9994, 4051, -21160, -22588, -6434, 6385, -18488, -3028, -14430, -6167, 11605, 
-8767, -19019, -8318, -9878, 10333, -9465, -156, -6999, -2573, 10943, 7454, -28127, -20360, 17467, 8943, 17670, 
-12505, 8980, 8419, 15600, 14833, -14017, 23991, 23523, 1202, 1778, 21566, 4925, -15421, -30296, 2349, -16977, 
-5687, 11536, 6402, -14762, -1494, 12420, 14934, -15079, 16618, -2043, -5404, -9340, 7802, -23434, 19833, 3625, 
-15804, -14071, -12009, 1349, -16235, -1632, -7706, -2222, -13096, 4095, -21375, -3300, 5164, -1607, -8227, -12645, 
-14295, -11246, -3786, 13491, -28912, 10256, -19344, -4399, -12315, 22516, -4283, 10692, 2367, -23891, 3530, 7120, 
-14647, 21757, 10699, 25416, 9074, -464, -16128, 1734, -6578, 10347, -5811, -13945, -18189, 5313, -18172, -19439, 
-513, -10730, 5757, 2686, 907, -11460, 26189, -10456, 19179, 3689, 19392, -4798, 24959, 9888, -4900, 20404, 
-19547, -9154, -6168, 10706, -21112, -1734, -11548, -24487, -8626, -22288, -28968, -11897, 4549, -7994, 19619, 4969, 
-6303, 5386, 14141, -3291, -11662, -7560, -26588, 4478, -2770, 8818, -9924, -18242, -9444, -92, -20277, 4441, 
};

#define WIDTH 16
#define HEIGHT 16
